import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.*;
import java.io.File;
import java.util.Vector;
public class Menu
{
JMenuBar menu_bar;
//File currentOpenFile;
JMenu file;
JMenuItem open, exit;
JMenu edit;
JMenuItem tag, delete, select, clean;
final JFileChooser fc = new JFileChooser();
public Menu( )
{
menu_bar = new JMenuBar();
createFileMenu();
createEditMenu();
}
public void createFileMenu()
{
file = new JMenu("File");
file.setMnemonic('F');
open = new JMenuItem("Open File...");
exit = new JMenuItem("Exit");
file.add(open);
fc.setMultiSelectionEnabled(true);
open.addActionListener(
new ActionListener(){//System.out.println("clean");
public void actionPerformed(ActionEvent e){
int returnVal = fc.showOpenDialog(open);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File currentFile[];
currentFile= fc.getSelectedFiles();
int len=currentFile.length;
String[] filename=new String[len];
MP3FILE [] mp3=new MP3FILE[len];
for(int i=0;i<len;i++){
filename[i]= currentFile[i].getName();
String extension = filename[i].substring(filename[i].lastIndexOf(".") + 1, filename[i].length());
String mp3extension = "mp3";
if (extension.compareTo(mp3extension) != 0) {
JOptionPane.showMessageDialog(null, "Currently We only support MP3 file");
}else{
try {
mp3[i] = new MP3FILE(currentFile[i]);
Main_Frame.filevector.add(mp3[i]);
Main_Frame.insertNew(mp3[i]);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
} else {
//did not open successfully
}
}
});
file.add(exit);
exit.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
menu_bar.add(file);
}
public void createEditMenu()
{
edit = new JMenu("Edit");
file.setMnemonic('E');
tag = new JMenuItem("Fix Tag");
delete = new JMenuItem("Delete");
select = new JMenuItem("Select All");
clean = new JMenuItem("Clean");
edit.add(tag);
edit.add(delete);
edit.add(select);
edit.add(clean);
menu_bar.add(edit);
tag.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
//TODO: ckean tag here
// System.out.println("fix");
}
});
delete.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
//TODO: delete tag here
int [] selecetdRows;
selecetdRows=Table_Panel.table.getSelectedRows();
int selecetdRowsCount=Table_Panel.table.getSelectedRowCount();
DefaultTableModel model = (DefaultTableModel) Table_Panel.table.getModel();
for(int i=selecetdRowsCount-1;i>=0;i--){
model.removeRow(selecetdRows[i]);
Main_Frame.filevector.removeElementAt(selecetdRows[i]);
}
// System.out.println("delete");
}
});
select.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
//TODO: select all tag here
DefaultTableModel model = (DefaultTableModel) Table_Panel.table.getModel();
Table_Panel.table.addRowSelectionInterval(0,model.getRowCount()-1);
// System.out.println("select all");
}
});
clean.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
//TODO: ckean tag here
DefaultTableModel model = (DefaultTableModel) Table_Panel.table.getModel();
for(int i=model.getRowCount()-1;i>=0;i--){
model.removeRow(i);
Main_Frame.filevector.removeElementAt(i);
}
// System.out.println("clean");
}
});
}
}